package com.Humanities.checkcode.service.impl;

import com.Humanities.checkcode.service.CheckCodeService;
import org.springframework.stereotype.Component;

import java.util.Random;

/**
 * @author Mr.M
 * @version 1.0
 * @description 数字字母生成器
 * @date 2022/9/29 18:28
 */
@Component("NumberLetterCheckCodeGenerator")
public class NumberLetterCheckCodeGenerator implements CheckCodeService.CheckCodeGenerator {


@Override
public String generate(int length) {
    // 定义包含字母和数字的字符串
    String str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    // ���建随机数生成器
    Random random = new Random();
    // 使用 StringBuffer 来构建验证码字符串
    StringBuffer sb = new StringBuffer();
    // 循环生成指定长度的验证码
    for (int i = 0; i < length; i++) {
        // 随机生成一个索引，范围在 0 到 35 之间
        int number = random.nextInt(36);
        // 从字符串中取出对应索引的字符并追加到 StringBuffer 中
        sb.append(str.charAt(number));
    }
    // 返回生成的验证码字符串
    return sb.toString();
}


}
